package com.hgyc.mom.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hgyc.mom.system.entity.SysConfig;

/**
 * 参数配置Service接口
 *
 * @author fwj
 * @since 2025-05-13
 */
public interface SysConfigService extends IService<SysConfig> {

    /**
     * 根据key获取配置
     * @param key
     * @return
     */
    SysConfig getByKey(String key);

    /**
     * 加载参数缓存数据
     */
    void loadingConfigCache();

    /**
     * 清空参数缓存数据
     */
    void clearConfigCache();

    /**
     * 重置参数缓存数据
     */
    void resetConfigCache();

    /**
     * 保存
     * @param sysConfig 配置信息
     */
    void saveConfig(SysConfig sysConfig);

    /**
     * 更新配置
     * @param sysConfig 配置信息
     */
    void updateConfig(SysConfig sysConfig);

    /**
     * 根据键名查询参数配置信息
     *
     * @param configKey 参数键名
     * @return 参数键值
     */
    String selectConfigByKey(String configKey);
}